package com.ktgj.customer.mapper;

import java.util.List;
import com.ktgj.customer.domain.EmployeeVipresource;
import com.ktgj.customer.domain.dto.CustomerCRMDataDTO;
import org.apache.ibatis.annotations.Param;

/**
 * 【请填写功能名称】Mapper接口
 * 
 * @author ruoyi
 * @date 2022-09-20
 */
public interface EmployeeVipresourceMapper 
{
    /**
     * 查询【请填写功能名称】
     * 
     * @param vipresourceId 【请填写功能名称】ID
     * @return 【请填写功能名称】
     */
    public EmployeeVipresource selectEmployeeVipresourceById(Long vipresourceId);

    /**
     * 查询【请填写功能名称】列表
     * 
     * @param employeeVipresource 【请填写功能名称】
     * @return 【请填写功能名称】集合
     */
    public List<EmployeeVipresource> selectEmployeeVipresourceList(EmployeeVipresource employeeVipresource);

    /**
     * 新增【请填写功能名称】
     * 
     * @param employeeVipresource 【请填写功能名称】
     * @return 结果
     */
    public int insertEmployeeVipresource(EmployeeVipresource employeeVipresource);

    /**
     * 修改【请填写功能名称】
     * 
     * @param employeeVipresource 【请填写功能名称】
     * @return 结果
     */
    public int updateEmployeeVipresource(EmployeeVipresource employeeVipresource);

    /**
     * 删除【请填写功能名称】
     * 
     * @param vipresourceId 【请填写功能名称】ID
     * @return 结果
     */
    public int deleteEmployeeVipresourceById(Long vipresourceId);

    int deleteVipResourceByEmployeeId(Long employeeId);


    int deleteVipResourceBySingle(@Param("employeeId") Long employeeId, @Param("phone") String phone);

    /**
     * 批量删除【请填写功能名称】
     * 
     * @param vipresourceIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteEmployeeVipresourceByIds(Long[] vipresourceIds);

    /**
     * 获取当前会员ID的数据是否在员工资源表中存在
     * @param customerId
     * @return
     */
    public Long checkCustomerIdExist(Long customerId);

    //查询当前VIP经理的已分配数量
    Long employeeVipCount(Long employeeId);

    /**
     * 保存vip经理分配信息
     * */
    public int saveDistribute(EmployeeVipresource employeeVipresource);

    int changeVipresource(@Param("sourceId") Long sourceId, @Param("targetId") Long targetId);

    CustomerCRMDataDTO queryVipresourceById(Long customerId);
}
